*****************************************************************
*****************************************************************
*****                                                       *****
*****       Mona Morgan-Collins (King's College London)     *****
*****        Contact: mona.morgan-collins@kcl.ac.uk         *****
*****                                                       *****
*****               Bringing in the New Votes:              *****
*****       Turnout of Women after Enfranchisement          *****
*****                                                       *****
*****        American Political Science Review              *****
*****                                                       *****
*****         Replicating Analyses in the Appendix          *****
*****                                                       *****
*****************************************************************
***************************************************************** 


*set seed  - setting the initial value of the random-number seed set as Stata's default when Stata is launched.
set seed 123456789
/* Because bootstrapping involves drawing pseudorandom numbers, the exact results of BOOTTEST command */
/* depend on the starting value of the random-number generator. */
/* This means that all  wild bootstrap results can be reproduced only on the first run of each do file */
/* after Stata is launched and when all BOOTTEST commands are run consecutively in each do file */ 
/* OR when seed is set as above before each do file is run and when all BOOTTEST commands are run consecutively in each do file */ 


*********************************
*Figure A1: Women's and Men's Turnout in Nine Countries
*********************************
use dta\tingsten, clear                       //using tingsten data set
#delimit ;
 twoway (scatter vtw country_ranked_gg if smd==0, mcolor(gray) m(Oh)) (scatter vtm country_ranked_gg if smd==0, mcolor(black) m(O) mlab(gg) mlabpos(12)  )
 (scatter vtw country_ranked_gg if smd==1, mcolor(eltblue) m(Sh) msize(large)) (scatter vtm country_ranked_gg if smd==1, mcolor( ebblue  ) m(S) msize(large) mlab(gg) mlabpos(12)  )
 ,ytitle(Turnout (%), size(large)) ylabel(0(25)100, labsize(large)) xtitle("", size(vlarge)) xlabel(1(1)12, valuelabel angle(45) labsize(medsmall)) title("", nobox) note("", nobox) legend(off) scheme(s1mono)   
 xscale(range(1(1)14)) text(8 1.5 "PR", color(black) size(small))
 text(12 1.5 "SMD", color(ebblue) size(small)) text( 74 13 "Gap", color(gray) size(small)) text(70 13 "Men", color(gray) size(small)) text(31 13.3 "Women", color(gray) size(small));
#delimit cr


*********************************
*Figure A2: When Do Newly Enfranchised Women Vote?
*********************************
*nothing to replicate


*********************************
*Table A1: Summary Statistics 
*********************************
use dta\nor0918, clear                      //using nor0918 data set
sum margin turnf_pc turnm_pc  turng if year==1909
use dta\nor0918, clear                       //using nor0918 data set
sum margin turnf_pc turnm_pc  turng if year==1915
use dta\nor2127, clear                       //using nor2127 data set
sum hhi turnf_pc turnm_pc  turng if year==1921


*********************************
*Figure A3: Women's and Men's Turnout 1909-1927
*********************************
use dta\norovert, clear                     //using norovert data set
#delimit ;
 twoway (scatter turnm year , lcolor(black) lpattern(solid) lwidth(thick) m(O) mcolor (black) msize(med) connect(line) mlab(gg) mlabpos(12) mlabsize(med) ) (scatter turnf year , lcolor(gray) lpattern(solid) lwidth(thick) m(O) mcolor(gray) msize(med) connect(line) ) 
 ,ytitle(Turnout (%), size(huge)) ylabel(0(25)100, labsize(huge)) xtitle("", size(vlarge)) xlabel(1909(3)1927, valuelabel  labsize(vlarge)) 
 legend(off) scheme(s1mono) xscale(range(1907(1)1929)) xline(1909 1915 1921, lcolor(gray))
 text(76 1928 "Men", color(black) size(med)) text(63 1928.4 "Women", color(gray) size(med)) text(97 1912 "Tax-Paying Women", color(black) size(med)) text(97 1918 "All women", color(black) size(med)) text(97 1923 "PR", color(black) size(med)) ;
#delimit cr


*********************************
*Table  A2: The Cross-Sectional Effect of District Margin on Turnout Measures 1909-1918, Full Results
*********************************
use dta\nor0918, clear                        //using nor0918 data set
reg  turnf_pc margin if year==1909, robust
reg  turnm_pc margin if year==1909, robust
reg  turng    margin if year==1909, robust
reg  turnf_pc margin if year==1912, robust
reg  turnm_pc margin if year==1912, robust
reg  turng    margin if year==1912, robust
reg  turnf_pc margin if year==1915, robust
reg  turnm_pc margin if year==1915, robust
reg  turng    margin if year==1915, robust
reg  turnf_pc margin if year==1918, robust
reg  turnm_pc margin if year==1918, robust
reg  turng    margin if year==1918, robust

 
*********************************
*Table A3: The Cross-Sectional Effect of Within-District Concentration on Turnout Measures 1921-1927, Full Results
*********************************
use dta\nor2127, clear                        //using nor2127 data set
reg  turnf_pc hhi i.districtPR if year==1921, cluster(districtPR)
boottest hhi
reg  turnm_pc hhi i.districtPR if year==1921, cluster(districtPR)
boottest hhi
reg  turng hhi i.districtPR if year==1921, cluster(districtPR)
boottest hhi
reg  turnf_pc hhi i.districtPR if year==1924, cluster(districtPR)
boottest hhi
reg  turnm_pc hhi i.districtPR if year==1924, cluster(districtPR)
boottest hhi
reg  turng hhi i.districtPR if year==1924, cluster(districtPR)
boottest hhi
reg  turnf_pc hhi i.districtPR if year==1927, cluster(districtPR)
boottest hhi
reg  turnm_pc hhi i.districtPR if year==1927, cluster(districtPR)
boottest hhi
reg  turng hhi i.districtPR if year==1927, cluster(districtPR)
boottest hhi
  
 
*********************************
*Table A4: The Cross-Sectional Effect of District Margin on Turnout Measures in 1909, Robustness
*********************************
use dta\nor0918, clear                       //using nor0918 data set
reg  turnf_pc margin , robust, if year==1909
reg  turnf_pc margin el_rat , robust , if year==1909
reg  turnf_pc margin i.urban i.soccont  minmanuf10 intel10 marw10 , robust , if year==1909
reg  turnm_pc margin , robust , if year==1909
reg  turnm_pc margin el_rat , robust , if year==1909
reg  turnm_pc margin i.urban i.soccont minmanuf10 intel10 marw10, robust , if year==1909
reg  turng margin , robust , if year==1909
reg  turng margin el_rat , robust , if year==1909
reg  turng margin i.urban i.soccont minmanuf10 intel10 marw10, robust , if year==1909
reg  wsh margin , robust , if year==1909


*********************************
*Table A5: The Cross-Sectional Effect of District Margin on Turnout Measures 1915, Robustness
*********************************
use dta\nor0918, clear                       //using nor0918 data set
reg  turnf_pc margin , robust , if year==1915
reg  turnf_pc margin el_rat , robust , if year==1915
reg  turnf_pc margin i.urban i.soccont  minmanuf10 intel10 marw10 , robust , if year==1915
reg  turnm_pc margin , robust , if year==1915
reg  turnm_pc margin el_rat , robust  , if year==1915
reg  turnm_pc margin i.urban i.soccont minmanuf10 intel10 marw10, robust , if year==1915
reg  turng margin , robust , if year==1915
reg  turng margin el_rat , robust , if year==1915
reg  turng margin i.urban i.soccont minmanuf10 intel10 marw10, robust , if year==1915
reg  wsh margin , robust , if year==1915
     
	 
*********************************
*Table A6: The Cross-Sectional Effect of Within-District Concentration on Turnout Measures in Norway 1921, Robustness 
*********************************
use dta\nor2117, clear                       //using nor2117 data set
*Women's Turnout
reg  turnf_pc hhi i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  turnf_pc margin_raw i.districtPR, cluster(districtPR) , if year==1921
boottest margin_raw
reg  turnf_pc hhi el_rat i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  turnf_pc hhi i.urban i.soc_lead fact20  intel20 marw20   i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  turnf_pc hhi i.urban i.soc_lead factw20  intelw20 marw20   i.districtPR, cluster(districtPR) , if year==1921
boottest hhi 
*Men's Turnout
reg  turnm_pc hhi i.districtPR, cluster(districtPR), if year==1921
boottest hhi
reg  turnm_pc margin_raw i.districtPR, cluster(districtPR) , if year==1921
boottest margin_raw
reg  turnm_pc hhi el_rat i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  turnm_pc hhi  i.urban i.soc_lead fact20  intel20 marw20  i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  turnm_pc hhi  i.urban i.soc_lead factw20  intelw20 marw20  i.districtPR, cluster(districtPR) , if year==1921
boottest hhi 
*Gedenr Gap
reg  turng hhi i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  turng margin_raw i.districtPR, cluster(districtPR) , if year==1921
boottest margin_raw
reg  turng hhi el_rat i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  turng hhi i.urban i.soc_lead fact20 intel20 marw20   i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  turng hhi i.urban i.soc_lead factw20 intelw20 marw20  i.districtPR, cluster(districtPR) , if year==1921
boottest hhi
reg  wsh hhi i.districtPR, cluster(districtPR) , if year==1921
boottest hhi

   
*********************************
*Table A7: The Effect of Competition on Turnout, Fixed Effects, Full Results
*********************************
*Norway SMD: 1909-1918
use dta\nor0918_red, clear                        //using nor0918_red data set
xtreg  turnf_pc margin i.year, fe robust
xtreg  turnm_pc margin i.year, fe robust
xtreg  turng margin i.year, fe robust
xtreg  wsh margin i.year, fe robust
*Norway PR: 1921-1927
use dta\nor2127_red, clear                        //using nor2127_red data set
xtreg  turnf_pc hhi i.year , fe cluster(districtPR)  
boottest hhi
xtreg  turnm_pc hhi  i.year , fe cluster(districtPR)
boottest hhi
xtreg  turng hhi  i.year, fe cluster(districtPR)  
boottest hhi
xtreg  wsh hhi  i.year, fe cluster(districtPR)  
boottest hhi	


*********************************
*Table A8: Lagging Electoral Competition in Norway 1909
*********************************
use dta\nor0906, clear                       //using nor0906 data set
reg  turnf_pc margin , robust
reg  turnm_pc margin , robust
reg  turng margin , robust
reg  turnf_pc margin06 , robust
reg  turnm_pc margin06 , robust
reg  turng margin06 , robust


*********************************
*Table A9: Lagging Electoral Competition in Sweden 1921
*********************************
use dta\swe, clear                       //using swe data set
reg  turnf_pc hhiL i.county_enc, cluster(county_enc), if redistr20==0 & redistr21==0
boottest hhiL
reg  turnm_pc hhiL i.county_enc, cluster(county_enc), if redistr20==0 & redistr21==0
boottest hhiL
reg  turng hhiL i.county_enc, cluster(county_enc), if redistr20==0 & redistr21==0
boottest hhiL
reg  turnf_pc hhi i.county_enc, cluster(county_enc)
boottest hhi
reg  turnm_pc hhi i.county_enc, cluster(county_enc)
boottest hhi
reg  turng hhi i.county_enc, cluster(county_enc)
boottest hhi


*********************************
*Figure A4: Mobilizational Advantage
*********************************
*1909
use dta\nor0918, clear                       //using nor0918 data set  
*Conservatives vs Liberals
#delimit ;
 twoway 
 (scatter turnf_pc margin if ConLib1==1 & year==1909 , mcolor(gs13) m(oh)) (lowess turnf_pc margin if ConLib1==1 & year==1909 , lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin if ConLib1==1 & year==1909, mcolor(gs4) m(oh))  (lowess turnm_pc margin if ConLib1==1 & year==1909 , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Con-Lib", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr
*Conservatives vs Socialists
#delimit ;
 twoway 
 (scatter turnf_pc margin if ConSoc1==1 & year==1909 , mcolor(gs13) m(oh)) (lowess turnf_pc margin if ConSoc1==1 & year==1909 , lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin if ConSoc1==1 & year==1909  , mcolor(gs4) m(oh))  (lowess turnm_pc margin if ConSoc1==1 & year==1909, lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Con-Soc", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr
*Liberals vs Socialists
#delimit ;
 twoway 
 (scatter turnf_pc margin if LibSoc1==1 & year==1909 , mcolor(gs13) m(oh)) (lowess turnf_pc margin if LibSoc1==1  & year==1909, lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin if LibSoc1==1 & year==1909, mcolor(gs4) m(oh))  (lowess turnm_pc margin if LibSoc1==1 & year==1909, lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Lib-Soc", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr
*1915
use dta\nor0918, clear                       //using nor0918 data set  
*Conservatives vs Liberals
#delimit ;
 twoway 
 (scatter turnf_pc margin if ConLib1==1 & year==1915 , mcolor(gs13) m(oh)) (lowess turnf_pc margin if ConLib1==1 & year==1915 , lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin if ConLib1==1 & year==1915, mcolor(gs4) m(oh))  (lowess turnm_pc margin if ConLib1==1 & year==1915, lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Con-Lib", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr
*Conservatives vs Socialists
#delimit ;
 twoway 
 (scatter turnf_pc margin if ConSoc1==1 & year==1915 , mcolor(gs13) m(oh)) (lowess turnf_pc margin if ConSoc1==1 & year==1915 , lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin if ConSoc1==1 & year==1915, mcolor(gs4) m(oh))  (lowess turnm_pc margin if ConSoc1==1 & year==1915, lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Con-Soc", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr
*Liberals vs Socialists
#delimit ;
 twoway 
 (scatter turnf_pc margin if LibSoc1==1 & year==1915 , mcolor(gs13) m(oh)) (lowess turnf_pc margin if LibSoc1==1 & year==1915 , lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin if LibSoc1==1 & year==1915, mcolor(gs4) m(oh))  (lowess turnm_pc margin if LibSoc1==1 & year==1915, lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Lib-Soc", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr
*1921
use dta\nor2127, clear                       //using nor2127 data set
*conservatives
#delimit ;
 twoway 
 (scatter turnf_pc hhi if max1_p==hfv_pc & year==1921  , mcolor(gs13) m(oh)) (lowess turnf_pc hhi if max1_p==hfv_pc & year==1921   , lwidth(thick) lcolor(gray))
 (scatter turnm_pc hhi if max1_p==hfv_pc & year==1921  , mcolor(gs4) m(oh))  (lowess turnm_pc hhi if max1_p==hfv_pc & year==1921   , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(HHI, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Con Lead", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr
*liberals
#delimit ;
 twoway 
 (scatter turnf_pc hhi if max1_p==v_pc & year==1921  , mcolor(gs13) m(oh)) (lowess turnf_pc hhi if max1_p==v_pc & year==1921  , lwidth(thick) lcolor(gray))
 (scatter turnm_pc hhi if max1_p==v_pc & year==1921   , mcolor(gs4) m(oh))  (lowess turnm_pc hhi if max1_p==v_pc & year==1921   , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(HHI, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Lib Lead", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr
*socialists
#delimit ;
 twoway 
 (scatter turnf_pc hhi if max1_p==dna_pc & year==1921  , mcolor(gs13) m(oh)) (lowess turnf_pc hhi if max1_p==dna_pc & year==1921  , lwidth(thick) lcolor(gray))
 (scatter turnm_pc hhi if max1_p==dna_pc & year==1921   , mcolor(gs4) m(oh))  (lowess turnm_pc hhi if max1_p==dna_pc & year==1921   , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(HHI, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Soc Lead", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) ;
#delimit cr


*********************************
*Table A10: The Effect of District Competition in PR, 1921-1927
*********************************
use dta\nor2127_district, clear                       //using nor2127_district data set
*Women's Turnout
reg  turnf_pc margin  i.year, robust
reg  turnf_pc margin  el_rat i.year, robust
reg  turnf_pc margin  fact20 intel20 marw20 dna_pc i.urban01 i.year, robust
*Men's Turnout
reg  turnm_pc margin  i.year, robust
reg  turnm_pc margin  el_rat i.year, robust
reg  turnm_pc margin  fact20 intel20 marw20 dna_pc i.urban01 i.year, robust
*Gap
reg  turng margin  i.year, robust
reg  turng margin  el_rat i.year, robust
reg  turng margin  fact20 intel20 marw20 dna_pc i.urban01 i.year, robust


*********************************
*Table A11: The Effect of Within-District  Competition in SMDs, 1909 & 1915
*********************************
*1909
use dta\nor09_munic, clear                       //using nor09_munic data set
reg  turnf_pc hhi i.valgkrets  , cluster(valgkrets)
reg  turnm_pc hhi i.valgkrets  , cluster(valgkrets)
reg  turng hhi i.valgkrets  , cluster(valgkrets)
reg  turng c.hhi##i.margin_2 i.valgkrets    , cluster(valgkrets)
*1915
use dta\nor15_munic, clear                       //using nor15_munic data set
reg  turnf_pc hhi i.valgkrets  , cluster(valgkrets)
reg  turnm_pc hhi i.valgkrets  , cluster(valgkrets)
reg  turng hhi i.valgkrets  , cluster(valgkrets)
reg  turng c.hhi##i.margin_2 i.valgkrets    , cluster(valgkrets)
 

*********************************
*Table A12: The Effect of Competition on Change in Turnout 1921-1918 by Sex, Full Results
*********************************
use dta\nor_coxfivasmith, clear                       //using nor_coxfivasmith data set
reg  ch_turnoutw margin18f if  year==1921, cluster(PR_district)
boottest margin18f
reg  ch_turnoutm margin18f if  year==1921, cluster(PR_district) 
boottest margin18f
reg  ch_turnoutg margin18f if  year==1921, cluster(PR_district) 
boottest margin18f


*********************************
*Table A13: The Effect of Competition on Change in Turnout 1921-1918 by Sex, Robustness
*********************************
use dta\nor_coxfivasmith, clear                       //using nor_coxfivasmith data set
*Replicating Cox et al 2016
reg ch_turnout Margin if year==1921 & excl0918==0, cluster(PR_district) //main result Cox et al 2016, with clustered std errors
boottest Margin
reg ch_turnout margin18 if year==1921 , cluster(PR_district) //Cox et al 2016, but  larger data set & 1918 margin, with clustered std errors
boottest margin18
reg ch_turnout margin18f if year==1921 , cluster(PR_district) //Cox et al 2016, but larger data set & 1918 first margin, with clustered std errors
boottest margin18f
* Cox et al 2016 data set -  Smaller Data Set & Mean Margin First Round
reg  ch_turnoutg Margin if  year==1921 & excl0918==0, cluster(PR_district) 
boottest Margin
reg  ch_turnoutg Margin el_rat if  year==1921 & excl0918==0, cluster(PR_district)
boottest Margin
reg  ch_turnoutg Margin i.urban i.soccont fact20 intel20 marw20  if  year==1921 & excl0918==0, cluster(PR_district)
boottest Margin
reg  ch_turnoutg Margin i.urban i.soccont factw20 intelw20 marw20  if  year==1921 & excl0918==0 , cluster(PR_district)
boottest Margin
* Larger Data Set & Margin First Round 1918
reg  ch_turnoutg margin18 if  year==1921, cluster(PR_district) 
boottest margin18
reg  ch_turnoutg margin18 el_rat if  year==1921, cluster(PR_district)
boottest margin18
reg  ch_turnoutg margin18 i.urban i.soccont fact20 intel20 marw20  if  year==1921, cluster(PR_district)
boottest margin18
reg  ch_turnoutg margin18 i.urban i.soccont factw20 intelw20 marw20  if  year==1921, cluster(PR_district)
boottest margin18
* Larger Data Set & Margin Final Round 1918
reg  ch_turnoutg margin18f if  year==1921, cluster(PR_district) 
boottest margin18f
reg  ch_turnoutg margin18f el_rat if  year==1921, cluster(PR_district)
boottest margin18f
reg  ch_turnoutg margin18f i.urban i.soccont fact20 intel20 marw20  if  year==1921, cluster(PR_district)
boottest margin18f
reg  ch_turnoutg margin18f i.urban i.soccont factw20 intelw20 marw20  if  year==1921, cluster(PR_district)
boottest margin18f
reg  ch_turnoutwsh margin18f if  year==1921, cluster(PR_district)
boottest margin18f


*********************************
*Figure A5: Marginal Effects of Pre-Reform Margin Conditional on Men's Turnout and Change in Men's Turnout, Robustness
*********************************
use dta\nor_coxfivasmith, clear                       //using nor_coxfivasmith data set
*sub-figure a: Adding Women's Controls 
sum ch_turnoutm, det, if year==1921 //identifying 5th, 95th and 75th percentiles
reg  ch_turnoutg c.margin18f##c.turnoutm18##c.ch_turnoutm i.urban i.soccont factw20 intelw20 marw20    if  year==1921, cluster(PR_district)
margins, dydx(margin18f) at(turnoutm18=(0.25(0.01)0.91) ch_turnoutm=(-0.08  0.1 0.25 ) ) vsquish noestimcheck //5th, 95th, 75th percentile
#delimit;
 marginsplot, addplot (hist turnoutm18,  color(none) lcolor(gray) lwidth(0.01) yaxis(2) yscale(alt) yscale(alt axis(2)) 
 ytitle("Marginal Effects of Pre-Reform Margin", size(vlarge) axis(1)) ytitle("Observations (%)", size(vlarge) axis(2))
 ylabel(0(2)8, labsize(vlarge) axis(2)) ylabel(-0.5(0.5)1.5, labsize(vlarge) axis(1)) xlabel(, labsize(vlarge)))
 title("", size(huge)) xtitle ("Men's Turnout in 1918", size(vlarge)) 
 plotopts(msymbol(o) msize(vlarge) lwidth(med) lpattern(solid) color()) ciopts(lpattern(dash) color() lwidth(medthick) msymbol (none)) recastci(rconnected)  
 yline(0, lcolor(black)) legend(off ) yscale(alt) scheme(s1color) ysize(6) 
 note("Coeff. on triple product term 6.817 (p=0.006)", color(black) size(med))
 text(1.52 0.52 "Change in men's turnout at:", color(black) size(med))
 text(1.43 0.4 "0.1 (75th pctl)", color(red) size(med)) text(1.34 0.41 "0.25 (95th pctl)", color(navy) size(med)) text(1.24 0.4 "-0.08 (5th pctl)", color(green) size(med)) ;
#delimit cr
*sub-figure b: Replicating Cox et al 2016 coding decisions (Smaller Data Set & Mean Margin First Round)
sum ch_turnoutm, det, if year==1921 & excl0918==0 //checking 5th, 95th and 75th percentiles
reg  ch_turnoutg c.Margin##c.turnoutm18##c.ch_turnoutm  if  year==1921 & excl0918==0   , cluster(PR_district)
margins, dydx(Margin) at(turnoutm18=(0.39(0.01)0.91) ch_turnoutm=(-0.08  0.1 0.25 ) ) vsquish noestimcheck //5th, 95th, 75th percentile
#delimit;
 marginsplot, addplot (hist turnoutm18 if excl0918==0,  color(none) lcolor(gray) lwidth(0.01) yaxis(2) yscale(alt) yscale(alt axis(2)) 
 ytitle("Marginal Effects of Pre-Reform Margin", size(large) axis(1)) ytitle("Observations (%)", size(vlarge) axis(2))
 ylabel(0(2)8, labsize(vlarge) axis(2)) ylabel(-2(1)4, labsize(vlarge) axis(1)) xlabel(0.2(0.2)1, labsize(vlarge)))
 title("", size(huge)) xtitle ("Men's Turnout in 1918", size(large)) 
 plotopts(msymbol(o) msize(vlarge) lwidth(med) lpattern(solid) color()) ciopts(lpattern(dash) color() lwidth(medthick) msymbol (none)) recastci(rconnected)  
 yline(0, lcolor(black)) legend(off ) yscale(alt) scheme(s1color) ysize(6) 
  note("Coeff. on triple product term 11.841 (p=0.013)", color(black) size(med))
 text(3.9 0.52 "Change in men's turnout at:", color(black) size(med))
 text(3.6 0.4 "0.1 (75th pctl)", color(red) size(med)) text(3.3 0.41 "0.25 (95th pctl)", color(navy) size(med)) text(3 0.4 "-0.08 (5th pctl)", color(green) size(med)) ;
#delimit cr
*sub-figure c: Using alternative DV: women's share of voters
use dta\nor_coxfivasmith, clear                       //using nor_coxfivasmith data set
reg  ch_turnoutwsh c.margin18f##c.turnoutm18##c.ch_turnoutm if  year==1921, cluster(PR_district)
margins, dydx(margin18f) at(turnoutm18=(0.25(0.01)0.91) ch_turnoutm=(-0.08  0.1 0.25 ) ) vsquish noestimcheck //5th, 95th, 75th percentile
#delimit;
 marginsplot, addplot (hist turnoutm18,  color(none) lcolor(gray) lwidth(0.05) yaxis(2) yscale(alt) yscale(alt axis(2)) 
 ytitle("Marginal Effects of Pre-Reform Margin", size(vlarge) axis(1)) ytitle("Observations (%)", size(vlarge) axis(2))
 ylabel(0(2)8, labsize(vlarge) axis(2)) ylabel(-1(1)2, labsize(vlarge) axis(1)) xlabel(, labsize(vlarge)))
 title("", size(huge)) xtitle ("Men's Turnout in 1918", size(vlarge)) 
 plotopts(msymbol(o) msize(vlarge) lwidth(med) lpattern(solid) color()) ciopts(lpattern(dash) color() lwidth(medthick) msymbol (none)) recastci(rconnected)  
 yline(0, lcolor(black)) legend(off ) yscale(alt) scheme(s1color) ysize(6) 
 note("Coeff. on triple product term 4.72 (p=0.017)", color(black) size(med))
 text(1.95 0.52 "Change in men's turnout at:", color(black) size(med))
 text(1.8 0.4 "0.1 (75th pctl)", color(red) size(med)) text(1.65 0.41 "0.25 (95th pctl)", color(navy) size(med)) text(1.50 0.4 "-0.08 (5th pctl)", color(green) size(med)) ;
#delimit cr
*Wild bootstrap-t standard errors 
gen mt = margin18f * turnoutm18
gen mc = margin18f * ch_turnoutm
gen tc = turnoutm18 * ch_turnoutm
gen mtc = margin18f * turnoutm18 * ch_turnoutm
gen mt2 = Margin * turnoutm18
gen mc2 = Margin * ch_turnoutm
gen tc2 = turnoutm18 * ch_turnoutm
gen mtc2 = Margin * turnoutm18 * ch_turnoutm
*sub-figure a
reg  ch_turnoutg c.margin18f turnoutm18 ch_turnoutm mt mc tc mtc i.urban i.soccont factw20 intelw20 marw20 if  year==1921, cluster(PR_district)
boottest mtc 
*sub-figure b
reg  ch_turnoutg Margin turnoutm18 ch_turnoutm mt2 mc2 tc2 mtc2 if  year==1921 & excl0918==0 , cluster(PR_district)
boottest mtc2
*sub-figure c
reg  ch_turnoutwsh c.margin18f turnoutm18 ch_turnoutm mt mc tc mtc if  year==1921, cluster(PR_district)
boottest mtc 


*********************************
*Table A14: Marginal Effects of Pre-Reform Margin Conditional on Men's Turnout and Change in Men's Turnout, Full Results and Robustness
*********************************
use dta\nor_coxfivasmith, clear                       //using nor_coxfivasmith data set
*Model 1: Full Results for Manuscript Figure 7 (wild bootstrap errors calculated in Table a12, Model 3)
reg  ch_turnoutg c.margin18f##c.turnoutm18##c.ch_turnoutm if  year==1921, cluster(PR_district) 
*Model 2: Robustness: Adding Women's Controls  (wild bootstrap errors calculated in Figure a5a)
reg  ch_turnoutg c.margin18f##c.turnoutm18##c.ch_turnoutm i.urban i.soccont factw20 intelw20 marw20    if  year==1921, cluster(PR_district)
*Model 3: Robustness: Replicating Cox et al 2016 coding decisions - Smaller Data Set & Mean Margin First Round (wild bootsrap errors calculated in Figure a5b)
reg  ch_turnoutg c.Margin##c.turnoutm18##c.ch_turnoutm  if  year==1921 & excl0918==0   , cluster(PR_district)
*Model 4: Alternative DV (wild bootsrap errors calculated in Figure a5b)
reg  ch_turnoutwsh c.margin18f##c.turnoutm18##c.ch_turnoutm if  year==1921, cluster(PR_district)


*********************************
*Figure A6: Examples of election ads
*********************************
*nothing to replicate


*********************************
*Figure A7: Mean District margin by Newspaper Candidate Endorsements in Norway in 1909 and 1915
*********************************
*1909
use dta\nor09_ad, clear                       //using nor09_ad data set
#delimit ; 
 graph bar (mean) margin, over(ads_gr, label(labsize(vlarge) )) 
 bargap(5) blabel(bar, position(outside) format(%9.1f) color(black) size(huge)) scheme(s1mono) ysize(5)  
 legend(off) bar(1, color(black) )  ylabel(0(10)40, labsize(huge) nogrid )  ytitle("(Mean) District Margin", size(huge))   ; 
#delimit cr
#delimit ; 
 graph bar (mean) margin, over(ads_grw, label(labsize(vlarge) )) 
 bargap(5) blabel(bar, position(outside) format(%9.1f) color(black) size(huge)) scheme(s1mono) ysize(5)  
 legend(off) bar(1, color(black) )  ylabel(0(10)40, labsize(huge) nogrid )  ytitle("(Mean) District Margin", size(huge))   ; 
#delimit cr
*1915
use dta\nor15_ad, clear                       //using nor15_ad data set
#delimit ; 
 graph bar (mean) margin, over(ads_gr, label(labsize(vlarge) )) 
 bargap(5) blabel(bar, position(outside) format(%9.1f) color(black) size(huge)) scheme(s1mono) ysize(5)  
 legend(off) bar(1, color(black) )  ylabel(0(10)40, labsize(huge) nogrid )  ytitle("(Mean) District Margin", size(huge))   ; 
#delimit cr
#delimit ; 
 graph bar (mean) margin, over(ads_grw, label(labsize(vlarge) )) 
 bargap(5) blabel(bar, position(outside) format(%9.1f) color(black) size(huge)) scheme(s1mono) ysize(5)  
 legend(off) bar(1, color(black) )  ylabel(0(10)40, labsize(huge) nogrid )  ytitle("(Mean) District Margin", size(huge))   ; 
#delimit cr


*********************************
*Figure A8: Mean Party Support by Local Party Presence and Activity in Norway 1915
*********************************
*Women's Socialist Clubs
use dta\nor15_munic, clear                       //using nor15_munic data set
#delimit ; 
 graph bar (mean) s_pc, over(wsoc, label(labsize(vlarge) )) 
 bargap(5) blabel(bar, position(outside) format(%9.1f) color(black) size(huge)) scheme(s1mono) ysize(5)  
 legend(off) bar(1, color(black) )  ylabel(0(20)60, labsize(huge) nogrid )  ytitle("(Mean) % Socialist Vote", size(huge))   ; 
#delimit cr 
*Conservative Party Clubs
use dta\nor15_munic, clear                       //using nor15_munic data set
#delimit ; 
 graph bar (mean) hfv_pc, over(con_local , label(labsize(vlarge) ))
 bargap(5) blabel(bar, position(outside) format(%9.1f) color(black) size(huge)) scheme(s1mono) ysize(5)  
 legend(off) bar(1, color(black) )  ylabel(0(20)60, labsize(huge) nogrid )  ytitle("(Mean) % Conservative Vote", size(huge))   ; 
#delimit cr 


***************************
*Figure A9: Social and Electoral Homogeneity in 1918 & 1921
*********************************
use dta\nor18_munic, clear                        //using nor18_munic data set
#delimit ;
 kdensity  hhi ,lcolor(black) lwidth(thick) 
 ytitle(Density, size(huge)) ylabel(0(0.02)0.06, labsize(huge)) xtitle(HHI Electoral, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr
use dta\nor2127, clear                        //using nor2127 data set
#delimit ;
 kdensity  hhi if year==1921,lcolor(black) lwidth(thick) 
 ytitle(Density, size(huge)) ylabel(0(0.02)0.06, labsize(huge)) xtitle(HHI Electoral, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr
use dta\nor2127, clear                        //using nor2127 data set
#delimit ;
 twoway  (scatter dhhi hhi18 if year==1921  , mcolor(gs13) m(Oh)) (lfitci dhhi hhi18  , lwidth(medthick) lcolor())
 , ytitle(Change HHI 1921-1918, size(huge)) ylabel(-75(25)50, labsize(huge)) xtitle(HHI 1918, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6) yline(0);
#delimit cr
use dta\nor18_munic, clear                        //using nor18_munic data set
#delimit ;
 twoway  (scatter hhi_occup hhi  , mcolor(gs13) m(Oh)) (lfitci hhi_occup hhi , lwidth(medthick) lcolor())
 , ytitle(HHI Occupational, size(huge)) ylabel(0(20)80, labsize(huge)) xtitle(HHI Electoral, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr
use dta\nor2127, clear                        //using nor2127 data set
#delimit ;
 twoway  (scatter hhi_occup hhi if year==1921 , mcolor(gs13) m(Oh)) (lfitci hhi_occup hhi , lwidth(medthick) lcolor())
 , ytitle(HHI Occupational, size(huge)) ylabel(0(20)80, labsize(huge)) xtitle(HHI Electoral, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr


*********************************
*Table A15: Western Countries that Enfranchised Women in the First Wave
*********************************
*nothing to replicate


*********************************
*Table A16: Sampled Countries
*********************************
*nothing to replicate


*********************************
*Table A17: Summary Statistics for Units of Analysis in All Election Cases
*********************************
*New Zealand 1905
use dta\nz, clear                        //using nz data set
sum elect
*Norway 1909, 1915
use dta\nor0918, clear                   //using nor0918 data set
sum id if year==1909
sum id if year==1915
*Norway 1921
use dta\nor2127, clear                   //using nor2127 data set
sum knr if year==1921
*Sweden 1921
use dta\swe, clear                       //using swe data set
sum id if year==1921
*Austria 1927
use dta\aus, clear                       //using aus data set
sum id


*********************************
*Figure A10: Gender Gap against Men's Turnout in All Election Cases
*********************************
*New Zealand 1905
use dta\nz, clear                        //using nz data set
#delimit ;
 twoway (scatter turng turnm_pc    , mcolor(gs13) m(oh)) 
 (lowess turng turnm_pc   , lwidth(thick) lcolor(gray))
 , ytitle(Gender Gap, size(huge)) ylabel(-60(20)20, labsize(huge)) 
 xtitle(Men's Turnout, size(huge)) xlabel(0(25)100, labsize(huge) ) 
 title("New Zealand 1905 (SMD)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono)   
 ysize(6) yline(0);
#delimit cr
*Norway 1909
use dta\nor0918, clear                        //using nor0918 data set
#delimit ;
 twoway (scatter turng turnm_pc  if year==1909  , mcolor(gs13) m(oh)) 
 (lowess turng turnm_pc if year==1909 , lwidth(thick) lcolor(gray) )
 , ytitle(Gender Gap, size(huge)) ylabel(-60(20)20, labsize(huge)) 
 xtitle(Men's Turnout, size(huge)) xlabel(0(25)100, labsize(huge) ) 
 title("Norway 1909 (SMD)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono)   
 ysize(6) yline(0);
#delimit cr
*Norway 1915
use dta\nor0918, clear                        //using nor0918 data set
#delimit ;
 twoway (scatter turng turnm_pc  if year==1915  , mcolor(gs13) m(oh)) 
 (lowess turng turnm_pc if year==1915 , lwidth(thick) lcolor(gray) )
 , ytitle(Gender Gap, size(huge)) ylabel(-60(20)20, labsize(huge)) 
 xtitle(Men's Turnout, size(huge)) xlabel(0(25)100, labsize(huge) ) 
 title("Norway 1915 (SMD)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono)   
 ysize(6) yline(0);
#delimit cr
*Norway 1921
use dta\nor2127, clear                        //using nor2127 data set
#delimit ;
 twoway (scatter turng turnm_pc  if year==1921  , mcolor(gs13) m(oh)) 
 (lowess turng turnm_pc if year==1921 , lwidth(thick) lcolor(gray) )
 , ytitle(Gender Gap, size(huge)) ylabel(-60(20)20, labsize(huge)) 
 xtitle(Men's Turnout, size(huge)) xlabel(0(25)100, labsize(huge) ) 
 title("Norway 1921 (PR)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono)   
 ysize(6) yline(0);
#delimit cr
*Sweden 1921
use dta\swe, clear                            //using swe data set
#delimit ;
 twoway (scatter turng turnm_pc  if year==1921  , mcolor(gs13) m(oh)) 
 (lowess turng turnm_pc  if year==1921 , lwidth(thick) lcolor(gray))
, ytitle(Gender Gap, size(huge)) ylabel(-60(20)20, labsize(huge)) 
 xtitle(Men's Turnout, size(huge)) xlabel(0(25)100, labsize(huge) ) 
 title("Sweden 1921 (PR)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono)   
 ysize(6) yline(0);
#delimit cr
*Austria 1927
use dta\aus, clear                           //using aus data set
#delimit ;
 twoway (scatter turng turnm_pc    , mcolor(gs13) m(oh)) 
 (lowess turng turnm_pc   , lwidth(thick) lcolor(gray))
 (lowess turng turnm_pc   , lwidth(thick) lcolor(erose),  if turng<0 ) 
, ytitle(Gender Gap, size(huge)) ylabel(-60(20)80, labsize(huge)) 
 xtitle(Men's Turnout, size(huge)) xlabel(0(25)100, labsize(huge) ) 
 title("Austria 1927 (PR)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono)   
 ysize(6) yline(0);
#delimit cr


*********************************
*Figure A11: Scatter Plot of Competition and Women's and Men's Turnout in All Election Cases
*********************************
*New Zealand 1905
use dta\nz, clear                             //using nz data set
#delimit ;
 twoway 
 (scatter turnf_pc margin  , mcolor(gs13) m(p)) (lowess turnf_pc margin   , lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin , mcolor(gs4) m(p))  (lowess turnm_pc margin  , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("New Zealand 1905 (SMD)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr
*Norway 1909
use dta\nor0918, clear                        //using nor0918 data set
#delimit ;
 twoway 
 (scatter turnf_pc margin if year==1909 , mcolor(gs13) m(p)) (lowess turnf_pc margin  if year==1909 , lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin if year==1909 , mcolor(gs4) m(p))  (lowess turnm_pc margin if year==1909 , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Norway 1909 (SMD)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr
*Norway 1915
use dta\nor0918, clear                        //using nor0918 data set
#delimit ;
 twoway 
 (scatter turnf_pc margin if year==1915 , mcolor(gs13) m(p)) (lowess turnf_pc margin  if year==1915 , lwidth(thick) lcolor(gray))
 (scatter turnm_pc margin if year==1915 , mcolor(gs4) m(p))  (lowess turnm_pc margin if year==1915 , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(Margin, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Norway 1915 (SMD)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr
*Norway 1921
use dta\nor2127, clear                        //using nor2127 data set
#delimit ;
 twoway 
 (scatter turnf_pc hhi  if year==1921, mcolor(gs13) m(p)) (lowess turnf_pc hhi  if year==1921  , lwidth(thick) lcolor(gray))
 (scatter turnm_pc  hhi if year==1921  , mcolor(gs4) m(p))  (lowess turnm_pc hhi  if year==1921 , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(HHI, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Norway 1921 (PR)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr
*Sweden 1921
use dta\swe, clear                             //using swe data set
#delimit ;
 twoway 
 (scatter turnf_pc hhi if year==1921 , mcolor(gs13) m(p)) (lowess turnf_pc hhi if year==1921  , lwidth(thick) lcolor(gray))
 (scatter turnm_pc hhi if year==1921 , mcolor(gs4) m(p))  (lowess turnm_pc hhi if year==1921  , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(HHI, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Sweden 1921 (PR)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr
*Austria 1927
use dta\aus, clear                             //using aus data set
#delimit ; 
 twoway 
 (scatter turnf_pc hhi  , mcolor(gs13) m(p)) (lowess turnf_pc hhi   , lwidth(thick) lcolor(gray))
 (scatter turnm_pc hhi , mcolor(gs4) m(p))  (lowess turnm_pc hhi  , lwidth(thick) lcolor(black))
 , ytitle(Turnout (%), size(huge)) ylabel(0(20)100, labsize(huge)) xtitle(HHI, size(huge)) xlabel(0(25)100, labsize(huge)) 
 title("Austria 1927 (PR)", size(huge) nobox) note("", nobox) legend(off) scheme(s1mono) ysize(6);
#delimit cr


*********************************
*Table A18: Correlates of Women's and Men's Turnout in Additional Election Cases; Full Results
*********************************
*New Zealand 1905
use dta\nz, clear                       //using nz data set
reg  turnf_pc margin , robust
reg  turnm_pc margin , robust
reg  turng margin , robust
*Sweden 1921
use dta\swe, clear                       //using swe data set
reg  turnf_pc hhi i.county_enc, cluster(county_enc)
boottest hhi
reg  turnm_pc hhi i.county_enc, cluster(county_enc)
boottest hhi
reg  turng hhi i.county_enc, cluster(county_enc)
boottest hhi
*Austria 1927
use dta\aus, clear                       //using aus data set
reg  turnf_pc hhi i.const_enc, cluster(const_enc)
boottest hhi
reg  turnm_pc hhi i.const_enc, cluster(const_enc)
boottest hhi
reg  turng hhi i.const_enc, cluster(const_enc)
boottest hhi

